bleh
[mqlkit.git] / indicators / Heiken AshiR.mq4
blobc8916dcec86ed5937f20c7a50900bfc5b4d84d98
1 //ðåäàêòèðîâàíî è èñïðàâëåíî 17.04.2006 Íèêîëàé Êîñèöèí\r
2 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
3 //|                                                 Heiken AshiR.mq4 |\r
4 //|                               Copyright © 2004, Poul_Trade_Forum |\r
5 //|                                                         Aborigen |\r
6 //|                                          http://forex.kbpauk.ru/ |\r
7 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
8 #property copyright "Poul Trade Forum"\r
9 #property link      "http://forex.kbpauk.ru/"\r
10 //---- îòðèñîâêà èíäèêàòîðà â îòäåëüíîì îêíå\r
11 #property  indicator_separate_window\r
12 //---- êîëè÷åñòâî èíäèêàòîðíûõ áóôôåðîâ\r
13 #property indicator_buffers 2\r
14 //---- öâåòà èíäèêàòîðà\r
15 #property indicator_color1 Red\r
16 #property indicator_color2 Lime\r
17 //---- âåðõíåå è íèæíåå îãðàíè÷åíèå øêàëû îêíà èíäèêàòîðà\r
18 #property indicator_maximum 1.1\r
19 #property indicator_minimum 0.9\r
20 //---- òîëùèíà èíäèêàòîðíûõ ëèíèé\r
21 #property indicator_width1 2\r
22 #property indicator_width2 2\r
23 //---- ÂÕÎÄÍÛÅ ÏÀÐÀÌÅÒÐÛ ÈÍÄÈÊÀÒÎÐÀ \r
24 extern int Simbol=110;\r
25 //---- èíäèêàòîðíûå áóôôåðû\r
26 double HighBuffer[];\r
27 double LowBuffer [];\r
28 //---- ïåðåìåííûå ñ ïëàâàþùåé òî÷êîé  \r
29 double Trend;\r
30 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
31 //| Heiken AshiR initialization function                             |\r
32 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
33 int init()\r
34   {   \r
35 //---- Ñòèëü èñïîëíåíèÿ ãðàôèêà âèäå ñèìâîëîâ\r
36    SetIndexStyle(0,DRAW_ARROW);\r
37    SetIndexStyle(1,DRAW_ARROW);\r
38 //---- Îïðåäåëåíèå ñòèëÿ òî÷å÷íûõ îáúåêòîâ\r
39    SetIndexArrow(0,Simbol);\r
40    SetIndexArrow(1,Simbol);\r
41 //---- 2 èíäèêàòîðíûõ áóôôåðà èñïîëüçîâàíû äëÿ ñ÷¸òà.\r
42    SetIndexBuffer(0,HighBuffer);\r
43    SetIndexBuffer(1,LowBuffer );\r
44 //---- óñòàíîâêà çíà÷åíèé èíäèêàòîðà, êîòîðûå íå áóäóò âèäèìû íà ãðàôèêå\r
45    SetIndexEmptyValue(0,0);\r
46    SetIndexEmptyValue(1,0);\r
47 //---- èìåíà äëÿ îêîí äàííûõ è ëýéáû äëÿ ñóáúîêîí.\r
48    IndicatorShortName("Heiken Ashi");\r
49    SetIndexLabel   (0,"Heiken Ashi");\r
50    SetIndexLabel   (1,"Heiken Ashi");\r
51 //---- óñòàíîâêà íîìåðà áàðà, íà÷èíàÿ ñ êîòîðîãî áóäåò îòðèñîâûâàòüñÿ èíäèêàòîð  \r
52    SetIndexDrawBegin(0,1);\r
53    SetIndexDrawBegin(1,1);\r
54 //----\r
56    return(0);\r
57   }\r
58 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
59 //| Heiken AshiR iteration function                                  |\r
60 //+SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS+ \r
61 int start()\r
62   {\r
63 //----+ Ââåäåíèå öåëûõ ïåðåìåííûõ è ïîëó÷åíèå óæå ïîäñ÷èòàííûõ áàðîâ\r
64 //---- áëîêèðîâàíèå ïåðåñ÷¸òà âñåõ ïîäñ÷èòàííûõ è îòðèñîâàííûõ áàðîâ ïðè ïîäêëþ÷åíèè ê èíòåðíåòó\r
65 int MaxBar,limit,counted_bars=INDICATOR_COUNTED(0); INDICATOR_COUNTED(1);\r
66 //---- ïðîâåðêà íà âîçìîæíûå îøèáêè\r
67 if (counted_bars<0){INDICATOR_COUNTED(-1);return(-1);}\r
68 //---- ïîñëåäíèé ïîäñ÷èòàííûé áàð äîëæåí áûòü ïåðåñ÷èòàí \r
69 if (counted_bars>0) counted_bars--;\r
70 //---- îïðåäåëåíèå íîìåðà ñàìîãî ñòàðîãî áàðà, íà÷èíàÿ ñ êîòîðîãî áóäåò ïðîèçåä¸í ïåðåñ÷¸ò íîâûõ áàðîâ\r
71 MaxBar=Bars-2;\r
72 limit=(Bars-1-counted_bars);\r
73 //---- èíèöèàëèçàöèÿ íóëÿ\r
74 if (limit>MaxBar)\r
75 {\r
76   limit=MaxBar;\r
77   HighBuffer[Bars-1]=0; \r
78   LowBuffer [Bars-1]=0;\r
79 }\r
80 //----\r
81 for (int bar=limit; bar>=0;bar--)\r
82 {\r
83   Trend = iCustom(NULL,0,"Heiken Ashi#",1,bar)-iCustom(NULL,0,"Heiken Ashi#",0,bar);\r
84   if (Trend>0){HighBuffer[bar]=1; LowBuffer [bar]=0;}\r
85   if (Trend<0){LowBuffer [bar]=1; HighBuffer[bar]=0;}\r
86 }\r
87    return(0);\r
88  }\r
89 //+---------------------------------------------------------------------------------------------------------------------------+\r
90 //----+ Ââåäåíèå ôóíêöèè INDICATOR_COUNTED (ôàéë INDICATOR_COUNTED.mqh ñëåäóåò ïîëîæèòü â ïàïêó (äèðåêòîðèþ): MetaTrader\experts\include)\r
91 #include <INDICATOR_COUNTED.mqh> \r
92 //+---------------------------------------------------------------------------------------------------------------------------+\r